实现Excel在线预览方案集合

您所在的位置:网站首页 word 在线预览 实现Excel在线预览方案集合

实现Excel在线预览方案集合

2023-05-13 06:44| 来源: 网络整理| 查看: 265

自我总结 借助第三方服务 支持excel word pdf 也可以后端自己安装服务

免费微软:https://view.officeapps.live.com/op/view.aspx?src=http://demo.haoji.me/2017/02/08-js-xlsx/sample/sample.xlsx 小公司1:https://office.fynn.vip/view.html?src=http://demo.haoji.me/2017/02/08-js-xlsx/sample/sample.xlsx 小公司2:https://officeweb365.com/ https://ow365.cn/?i=您的网站ID&furl=要预览的Office文件下载地址

找第三方表格 把表格解析成数据 再数据再宣传表格

在WEB项目中经常遇到excel文档在线预览的需求,基本的解决思路有以下几大类:excel文档转PDF、excel文档直接转html、后台读取excel数据返回给前端利用Excel效果的表格插件如(HandsonTable)将数据进行展示、部署微软Office Online服务(office web apps)实现在线预览、在线的office预览服务(如谷歌docs、微软officeapps)。

EXCEL转PDF

excel转pdf可以通过第三方工具openoffice或者第三方类库如POI/NPOI、aspose等转换为pdf文件,然后通过pdf.js将转换完的pdf文件渲染成Canvas加载在网页上的显示。pdf.js显示pdf文件步骤:首先在页面引入pdf.js,然后PDFJS.getDocument('helloworld.pdf'),然后在回调函数里面设置显示的容器高度宽度等信息,另外pdf.js还支持翻页等功能。

EXCEL转HTML

excel转html可以通过第三方工具openoffice、微软office或者第三方类库如POI/NPOI、aspose.cell等转换为html文件。其中POI组件是开源免费的,Java版本叫POI,C#版本叫NPOI。但是转换的效果不是很好,有多个sheet页面的时候,POI会将所有sheet表格展示在一个网页里面,表格顶部会显示sheet名称,如果sheet很多的话页面会很长,出现滚动条页面样式不是很美观。

aspose.cell是收费组件,支持java、.net、.net core,免费使用时候转换出的html页面会有水印“Evaluation Only. Created with Aspose.Cells”如果excel存在多个sheet,aspose转换出来的网页会带选项卡,点击选项卡会展示对应的sheet页面内容,展示效果比POI转换出的html效果的好。 aspose-cells maven pom配置如下:

com.aspose

aspose-cells

8.2.1

本地部署微软Office Online Server

本地部署office online功能,需要的是2台服务器,并且服务需要安装windwos Server系统,配置比较复杂,首先安装IIS创建域,然后导入OfficeWebApps模块、创建Office Online Server、验证Office Online Server、下载并部署Wopi项目。整个配置部署完毕后便可以在线预览编辑office文档了,展示效果比转换成pdf/html的效果好太多。

在线的office预览服务

谷歌、微软都提供在线office的预览服务,微软的预览服务地址后面加参数?src=文档的URL地址,谷歌的文档服务预览地址加参数?url=文档的URL地址,URL的参数是需要预览的文件URL,这样预览效果还不错方便快捷。效果和上面的方案本地部署微软office on line服务差不多,不同的是一个是在线的,一个是本地化服务,各有利弊。

前端Excel效果的表格插件

前端JavaScript的Excel效果的表格插件,如HandsonTable,需要后台返回excel数据然后通过JS填空到表格,如果Excel包含很多合并单元格以及多个sheet页面,这样是很不方便的,效率也比不上前几种。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3